from pyspark import SparkContext, SparkConf

# 初始化spark
conf = SparkConf().setAppName("demo-python")
conf.setMaster("local")
sc = SparkContext(conf=conf)

# 基于内存集合
rdd = sc.parallelize(['1', '2', '3', '4', '5'])
rdd = rdd.map(lambda s: int(s))
su = rdd.reduce(lambda a, b: a + b)
print('sum =', su)

# 基于外部数据
rdd = sc.textFile("../words")
rdd = rdd.flatMap(lambda s: s.split(' ')).map(lambda s: (s, 1)).reduceByKey(lambda a, b: a + b)
li = rdd.collect()
print(li)
